home *** CD-ROM | disk | FTP | other *** search
-
- User Document for EyeCandy03 for the
- Commodore AMIGA "family" of computers. 94-09-20
-
-
- I. Introduction to EyeCandy
- ---------------------------
- EyeCandy is a program that generates various designs to please
- the eye. This program started life as "SpiroDraw", which simulates
- the spiral drawing toy called SpiroGraph (tm?). There are additional
- designs that may now be created (thus the new name for the program):
-
- "YarnBall"
- "CircleStar"
- "RotoBoxes"
- "RotoAngle"
- "PolyGen"
-
- As time goes on, I hope to add more designs into the program.
-
- This program is the third release for "EyeCandy". EyeCandy03
- has been compiled with ACE (c)David Benn on a Commodore Amiga
- A2000HD computer running OS 2.1, and also tested on an A1000 (1.3).
-
- New enhancements to the "03" version from the "02" version are:
-
- o Corrected a bug in the SpiroDraw "Set Data..." parameters
- window which prevented the user from selected different
- ways the "drawing wheel" is placed inside, outside or
- both on the "guide ring".
- o Accommodates Amiga system font sizes up to 15
- o Sets window font size explicitly to 8 in case
- the user has some other default window font size.
- This is a temporary setting only during use of EyeCandy.
- o Changed the 'Set Resolution' MENU function. This previously
- invoked a mini-window in which the user selected one of the
- three available SCREEN resolutions in EyeCandy. All three
- SCREEN resolutions are now directly selectable in the MENUs.
-
- If you get any enjoyment or productive use from this program, drop
- me a line. I'd like to receive any comments and suggestions you
- may have and of course, if you REALLY like it, and you find yourself
- using this program to entertain yourself or friends or family with
- it, stick a little $ (how about $5.00 US) in the envelope - please!).
- Thanks go to Bill from Arizona who was the first send some $ my way.
-
- If you have tried this program and do not feel it is worth the
- "asking" fee, _please_, by all means, drop me a line to share
- your thoughts... I promise I will NOT be offended or get hurt
- feelings, etc. !
-
- Charles E. Kenney, II
- 4 Burbank Circle
- Framingham, MA 01701
- USA
- phone: (508) 877-5959
-
- If you send me a disk and a stamped self-addressed disk mailer,
- I will also send you the latest version of "EyeCandy" and any
- other programs I may have since written.
-
- This program may be freely distributed as long as this document
- accompanies the program AND no more than a _small_ non-profit
- fee is charged for copying and or distribution.
-
- EyeCandy03 and its accompanying document (this file) may be
- reproduced on a CD collection (or similar medium). I only ask
- that I be notified of the particulars, and if possible, that
- a copy of the CD (or whatever) be forwarded to me if possible.
-
- Thanks.
- -ck.
-
- P.S. Thanks again to David Benn for his wonderful compiler, "ACE".
-
-
- II. Program Set-up and Menu Descriptions
- ----------------------------------------
-
- "EyeCandy" starts with default settings for each design type,
- except for the SpiroDraw "mode", which has 8 sets of settings
- in a "cyclable" memory buffer (See "Last" gadget below). This
- was done so the user can see immediately what "EyeCandy" can
- do without having to set any initial parameters. Following
- are descriptions of the various menus and resultant actions:
-
- The "Project" menu contains the "standard" Load and Save functions.
- The only design parameters that are complicated enough to warrant
- saving (in my opinion) are for the SpiroDraw designs, so I have
- implemented "Load" and "Save" only for SpiroDraw data.
-
- Load - The user may load data for a previously saved design.
- Data files for SpiroDraw designs always have a ".spd"
- extension. If the user does not include a ".spd" file
- extension, "EyeCandy" will add it automatically.
- The current SpiroDraw data is "backed-up" in a memory
- buffer before the data is loaded (See "Last" gadget above).
- "LIBS:arp.library" must be installed on WB 1.3 systems
- in order for the "Load" MENU item to function.
-
- Save - The user may save data for a SpiroDraw design if desired.
- If the user does not include a ".spd" file extension,
- "EyeCandy" will add it automatically.
- "LIBS:arp.library" must be installed on WB 1.3 systems
- in order for the "Save" MENU item to function.
-
- Draw - Draws the selected design for the data and other
- parameters currently in effect for the currently
- selected design. The user may interrupt a design
- which is in the process of being drawn with the famous
- 'CTRL-C' keys or by clicking the Left Mouse Button.
-
- About - A little message about "EyeCandy" and its author...
- ...and a mild little ShareWare nag!
-
- Quit - Well... This is how to exit "EyeCandy"!
-
-
- The "Design" menu contains all the functions
- the user needs to set the design parameters:
-
- Set Data... - Invokes a window which allows the user to specify
- the different parameters for the currently selected
- design type. The user may also invoke a function
- which randomizes parameters for the current design.
-
- SpiroDraw - Places "EyeCandy" into "SpiroDraw mode" and then invokes
- the "Set Data" function for SpiroDraw: A window opens
- which allows the user to specify three "size" parameters
- for the SpiroDraw design: Guide Ring, Drawing Wheel and
- Pen-Hole (see also "A few words about "SpiroDraw" below
- for a more detailed description of these).
- Clicking on the "In/Out" gadget cycles the placement
- of the Drawing Wheel to inside-only, outside-only or
- both inside-and-outside on the Guide Ring.
- Clicking on the "Last" gadget "recalls" the last
- data from the "parameters buffer". This buffer is
- capable of holding 8 sets of SpiroDraw design data -
- (Guide Ring, Drawing Wheel and Pen-Hole parameters).
- When the user clicks on this gadget, the previous
- data in use before the current data is placed into
- the current data and the other 7 sets of data are
- "bubbled-up", with the current data being "sent down"
- to the 8th set of data. Note that any time the user
- modifies the current data by loading new data from
- disk, by exiting the "Set Data..." window after
- making changes, or by selecting the "Random" gadget,
- (see below), the current data is "backed-up" to the
- "1st" buffer, the "1st" to the "2nd", the "2nd" to
- the "3rd", etc. The "8th" set of data simply gets
- "pushed off the cliff" and is lost forever.
- Clicking on the "Random" gadget randomizes the design
- sizes for the Guide Ring, Drawing Wheel and Pen-hole.
- The current data is "backed-up" before the data is
- randomized (See "Last" gadget description above).
- Clicking on the "Done" gadget exits this function
- and the user is asked whether or not to draw the
- new design using the new design parameters.
-
- Detail... (SpiroDraw only, "ghosted" for other design selections) -
- Invokes a window which allows the user to specify how
- detailed the SpiroDraw design will be.
- Clicking on the "Next" gadget cycles through all possible
- choices (each selection in the order below causes the
- design to take progressively longer to be drawn):
-
- DOTTY - plots dots at visible intervals rather than
- drawing a continuous line while the design
- is being drawn (dots may be connected with
- a line between each dot - see the description
- for the "Connect Dots" menu item below).
-
- SKETCHY - plots dots at smaller intervals than "DOTTY"
-
- COARSE - plots dots at _really_ small intervals.
-
- FINE - plots dots so close together that they are
- a continuous line when "SpiroDraw" draws.
-
- Connect Dots (SpiroDraw only, "ghosted" for other design selections) -
- The user may "check-mark" this menu item to connect the
- dots plotted with lines to give the design a continuous-
- line appearance. This menu item is automatically disabled
- if the user selects "FINE" in the "Detail..." menu
- (see above) since the design will already have a
- continuous appearance.
-
- YarnBall - Places "EyeCandy" into "YarnBall mode" and then invokes
- the "Set Data" function for YarnBall: A window opens
- which allows the user to specify the two design parameters
- required for drawing the "YarnBall" design:
- Size and number of spokes. This design is easier seen than
- explained so I will leave it to the user to experiment.
-
- CircleStar - Places "EyeCandy" into "CircleStar mode" and then invokes
- the "Set Data" function for CircleStar: A window opens
- which allows the user to specify three design parameters
- required for drawing the "CircleStar" design:
- Size, number of spokes and number of "radial" divisions.
- Again, this design is easier seen than explained so I
- will leave it to the user to experiment.
-
- RotoBoxes - Places "EyeCandy" into "RotoBoxes mode" and then invokes
- the "Set Data" function for RotoBoxes: A window opens
- which allows the user to specify the design parameters
- for drawing the "RotoBox" design: Size, number of sides
- on polygons and a growth factor. The user may also choose
- different "pieces" of the RotoBoxes to draw (there are
- sixteen to choose from). Again, this design is easier
- seen than explained.
-
- RotoAngle - Places "EyeCandy" into "RotoAngle mode" and then invokes
- the "Set Data" function for RotoAngle: A window opens
- which allows the user to specify three design parameters
- required for drawing the "RotoAngle" design: Size, angle
- to draw the "next" segment at, and a "line" growth factor.
- Again, this design is easier seen than explained.
-
- PolyGen - Places "EyeCandy" into "PolyGen mode" and then invokes
- the "Set Data" function for PolyGen: A window opens
- which allows the user to specify three design parameters
- required for drawing the "PolyGen" design: Number of sides
- on the polygons, angle to draw "next" polygon (from last
- polygon) and growth factor for the polygons. There is
- also a "Spokes" gadget which enables to user to vary the
- "PolyGen" design in six different ways. Yes, this design
- is also easier seen than explained!
-
-
- The "Preferences" menu contains the following functions:
-
- Ask Save (SpiroDraw only) - When data is changed, the user is
- asked whether or not to save the "old" data if this
- menu item is "check-marked". "UN-check-marking" this
- menu item stops "EyeCandy" from asking each time the
- data is changed. "EyeCandy" _always_ asks the user
- whether to save the new data (if it has been changed)
- when the "Quit" menu item is selected, regardless of
- the "check-mark" status of this menu item. The file,
- "LIBS:arp.library" must be installed on WB 1.3 systems
- in order for the "Ask Save" MENU item to be enabled
- (See also "Load" and "Save" above).
-
- Show Activity (SpiroDraw only) - When this item is "check-marked",
- a running '% completed' is displayed in the upper left
- corner of the 'drawing window'. This is done to show that
- "EyeCandy" is "doing something" and to give the user an
- idea of how long it will take to draw the design. It is
- difficult to see the design actually being drawn sometimes
- if the Pen-Hole value is very near zero or if the sizes of
- the Guide Ring and the Drawing Wheel are nearly equal.
- There are instances when the "% completed" message would
- ruin the appearance of the design so to avoid this, the
- user may "UN-check-mark" this "Show Activity" menu item.
-
- Clear Canvas - The user may "check-mark" this menu item to clear
- the drawing "canvas" before drawing each design.
- If this menu item is not "check-marked" then many
- designs can be drawn "on top of" each other.
-
- Visual Round - If the user selects "Visual Round", designs will be
- drawn with a circular appearance on the screen.
-
- Screen Round - If the user selects "Screen Round", designs will be
- drawn with a slightly oval appearance on the screen,
- but this is a useful selection if the design "window"
- is "saved" as an IFF file (using one of those nice
- "screen-capture-to-IFF-file" programs and then
- imported into a paint package capable of animation.
- Once this is done, the design can be rotated in a
- "Paint" program while maintaining its "roundness".
- This has been used successfully by me with DPaint.
-
- Window Round - If the user selects "Window Round", designs will be
- drawn with an elliptical appearance on the screen,
- with the height-to-width ratio of the ellipse set
- to approximate the height-to-width ratio of the
- current window.
-
- Low-res - "EyeCandy" changes to LOW resolution (320 x 200).
-
- Med-res - "EyeCandy" changes to MEDIUM resolution (640 x 200).
-
- High-res - "EyeCandy" changes to HIGH resolution (640 x 400).
-
-
- III. A few words about "SpiroDraw"
- --------------------------------------
-
- The Guide Ring was, for the child's toy, the plastic ring with
- "gearing" on each side that was so hard to hold perfectly in place
- on the paper while winding the Drawing Wheel around the inside or
- outside of the Guide Ring. Even pinning the Guide Ring down through
- the paper onto cardboard was never much help either! "SpiroDraw"
- holds the Guide Ring in place quite nicely though. "SpiroDraw"
- always places the Guide Ring in the center of the screen.
-
- The Drawing Wheel was, for the child's toy, the plastic "wheel"
- with "gearing" (to mesh with the Guide Ring) that was so hard to keep
- engaged to the gearing of the Guide Ring while winding the Drawing
- Wheel around the inside or outside of the Guide Ring. If you went
- too slowly you would sometimes get "stuck" due to the "cam" effect
- of the pen-hole in the Drawing Wheel that you had chosen, especially
- if you chose a pen-hole way out near the edge of the Drawing Wheel!
- If you went too fast, the gearing between the Drawing Wheel and the
- Guide Ring would slip or disengage altogether and you would draw a
- nice ugly, frantic and ruinous line across your design! This was
- REALLY frustrating, especially if you were "almost done"... and only
- 6 years old! "SpiroDraw" will never know gear slips and getting
- stuck by the "cam" effect!
-
- The "Pen-Hole" was, for the child's toy, the little hole in the
- Drawing Wheel (there were lots of these little holes in each wheel)
- that you would put your pen into which would determine the "character"
- of the design - the holes closest to the center of the Drawing Wheel
- would produce "circular" designs (for "SpiroDraw", small values for
- the Pen-hole distance from the center of the Drawing Wheel), and the
- holes closest to the edges of the Drawing Wheel would produce very
- "spirally" designs (for "SpiroDraw", large values for the Pen-hole
- distance from the center of the Drawing Wheel). Note that "SpiroDraw"
- allows a distance for the Pen-hole which is larger than the radius of
- the Drawing Wheel but only within practical limits depending upon whether
- the 'current' screen resolution is LOW, MEDIUM or HIGH. You may go ahead
- and TRY putting a pen into a hole on the Drawing Wheel that is larger
- than the Drawing Wheel itself using the child's toy!
-
-
- IV. A few words about "YarnBall" and "CircleStar"
- --------------------------------------------------
-
- Many (and I _do_ mean many) years ago, while doodling in Art
- class at school I came upon (or was shown by somebody) these two
- "designs". Remembering the fun I had drawing these by hand, I
- decided to implement them into this program. Hopefully I won't
- be the only one now to get some enjoyment from doodling with these
- two little designs.
-
-
- V. A few words about "RotoBoxes" and "RotoAngle"
- -------------------------------------------------
-
- These designs were inspired by Dave Haynie's article in
- AmigaWorld magazine about 'C' programming. I was trying to
- come up with a few more designs that would be interesting to
- add for EyeCandy03 and along came this little article. I have
- expanded upon the designs somewhat to give the user a few more
- options when setting design data for the two design generators.
- These two design generators were new for "EyeCandy03".
-
-
- VI. A few words about "PolyGen"
- --------------------------------
-
- After implementing "RotoBoxes" and "RotoAngle", I decided to
- implement a "tunnely" design generator. In fact, this one
- initially started out being named "Tunnels" until I came up
- with the "Spokes" modifier which made many design variations
- possible which did not look at all very "tunnely". So I just
- changed the name of the design generator to "PolyGen".
- This design generator was new for "EyeCandy03".
-
-
- V. What about futures?
- -----------------------
-
- I am hoping to add still more design generators over time.
- Comments, suggestions, ideas for new design generators and
- features, and yes, criticisms in general are also welcome.
- Please write!
-
-
- VI. A "useful" way to use this program
- (depending on your definition of "useful")
- -----------------------------------------------
-
- Here is a neat little tidbit for using this program with a
- Paint package (if you would like to play with or animate any of
- your designs that you generate with this program):
-
- For DPaint, anyway, this works nicely...
-
- 1. Start up a "screen-saver" program "in the background"
- which is capable of saving a screen as an IFF file.
- I have used "PictSaver" by Preben Nielsen successfully.
-
- 2. Generate your design after "check-marking" the menu item,
- "Screen Roundness". This is known to work for DPaint.
-
- 3. Once the design has finished being generated, execute
- whatever key sequence is required by the "screen saver"
- program you have and save the "screen" onto which the
- "EyeCandy" design has been drawn, as an IFF file.
-
- 4. Call up your Paint package and do whatever. I have
- had fun "rolling" my designs across the screen or
- "into the distance" or even using the design as a
- circular border for other brushes, etc.
-
-
- The first code which produced SpiroDraw designs
- was initially written on a Commodore-64 in 1984.
-
- As of the first writing of this document
- (for the SpiroDraw01 release), 94-02-17,
- this program was only 3 days shy of its 10th birthday!
-
- "A DECADE IN THE MAKING!"
-